﻿#include "GRAPH.h"
GRAPH::GRAPH(char* filename)
{
	FILE* f;
	f = fopen(filename, "rt");
	if (f == NULL)
	{
		n=0;
		return;
	}
	fscanf(f, "%d", &n);
	int i, j;
	for (i=0; i<n; i++){
	for (j=0; j<n; j++){
	fscanf(f, "%d", &a[i][j]);
	}
	}
	fclose(f);
}
GRAPH::~GRAPH(void)
{
}
void GRAPH::XuatDoThi(void)
{
	printf("%d\n", n);
	int i, j;
	for (i=0; i<n; i++)
	{
		for (j=0; j<n; j++)
		{
			printf( "%d\t", a[i][j]);
		}
		printf( "\n", a[i][j]);
	}
}
bool GRAPH::KiemTraDoThiHopLe(void)
{
//kiem tra so dinh cua do thi
if(n<=0)//điều kiện này có chính xác chưa?
{ 
	return false;
}
// kiểm tra ma trận
	int i;
	for (i=0; i<n; i++)
	{
		if (a[i][i] != 0)
		{
			return false;
		}
	}
	return true;
}
bool GRAPH::KiemTraDoThiVoHuong(void)
{
	int i, j;
	for (i=0; i<n; i++)
	{
		for (j=0; j<n; j++)
		{ 
			if (a[i][j] != a[j][i])
			{
				return false;
			}
		}
	}
	return true;
}